<?php

// 雪里开简易预约制访客管理系统 V1.0（2025.05.20）
// 演示地址: http://fangke.chalide.cn
// 更新关注: /weivote/yuyuefangke
// 文件路径: sys/site.php
// 文件大小: 5405 字节
// 最后修改时间: 2025-05-20 22:19:48
// 作者: yujianyue
// 邮件: 15058593138@qq.com
// 版权所有,保留发行权和署名权
/**
 * 系统设置
 * 功能反馈:15058593138@qq.com
 */

// 处理AJAX请求
if (isset($_GET['act'])) {
    switch ($_GET['act']) {
        case 'save':
            // 获取表单参数
            $site_name = post_param('site_name');
            $site_desc = post_param('site_desc');
            $allow_visit = post_param('allow_visit', '0');
            $visit_start_time = post_param('visit_start_time');
            $visit_end_time = post_param('visit_end_time');
            
            // 简单验证
            if (!$site_name) {
                json_error('系统名称不能为空');
            }
            
            // 更新数据库
            $db = new MySQLDB();
            
            $settings = [
                ['site_name', $site_name, '系统名称'],
                ['site_desc', $site_desc, '系统描述'],
                ['allow_visit', $allow_visit, '是否允许访客申请(1是,0否)'],
                ['visit_start_time', $visit_start_time, '访客允许时间开始'],
                ['visit_end_time', $visit_end_time, '访客允许时间结束']
            ];
            
            $success = true;
            foreach ($settings as $item) {
                $sql = "INSERT INTO `site` (`skey`, `sval`, `memo`) VALUES ('{$item[0]}', '{$item[1]}', '{$item[2]}')
                        ON DUPLICATE KEY UPDATE `sval` = '{$item[1]}'";
                if (!$db->query($sql)) {
                    $success = false;
                }
            }
            
            // 更新设置缓存文件
            $settings_json = [];
            $res = $db->getAll("SELECT * FROM `site`");
            if ($res) {
                foreach ($res as $row) {
                    $settings_json[$row['skey']] = $row['sval'];
                }
            }
            
            $json_content = json_encode($settings_json, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
            file_put_contents('../inc/json.php', $json_content);
            
            if ($success) {
                json_success('设置保存成功');
            } else {
                json_error('设置保存失败，请稍后重试');
            }
            break;
    }
    exit;
}

// 获取当前设置
$db = new MySQLDB();
$settings = [];
$res = $db->getAll("SELECT * FROM `site`");
if ($res) {
    foreach ($res as $item) {
        $settings[$item['skey']] = $item['sval'];
    }
}

// 加载页头
require_once './inc/head.php';
?>

<div class="container">
    <div style="max-width: 600px; margin: 0 auto;">
        <h2 style="margin-bottom: 20px;">系统设置</h2>
        
        <form id="settings-form">
            <div class="form-group">
                <label class="form-label">系统名称</label>
                <input type="text" name="site_name" class="form-control" value="<?php echo isset($settings['site_name']) ? $settings['site_name'] : '封闭校区访客管理系统'; ?>" required data-name="系统名称">
            </div>
            
            <div class="form-group">
                <label class="form-label">系统描述</label>
                <textarea name="site_desc" class="form-control" rows="3"><?php echo isset($settings['site_desc']) ? $settings['site_desc'] : '简易封闭校区访客管理系统'; ?></textarea>
            </div>
            
            <div class="form-group">
                <label class="form-label">是否允许访客申请</label>
                <div>
                    <label class="form-checkbox">
                        <input type="checkbox" name="allow_visit" value="1" <?php echo (isset($settings['allow_visit']) && $settings['allow_visit'] == '1') ? 'checked' : ''; ?>>
                        <span>允许</span>
                    </label>
                </div>
            </div>
            
            <div class="form-group">
                <label class="form-label">访客允许时间</label>
                <div style="display: flex; align-items: center;">
                    <input type="time" name="visit_start_time" class="form-control" value="<?php echo isset($settings['visit_start_time']) ? $settings['visit_start_time'] : '08:00'; ?>" style="width: 150px;">
                    <span style="margin: 0 10px;">至</span>
                    <input type="time" name="visit_end_time" class="form-control" value="<?php echo isset($settings['visit_end_time']) ? $settings['visit_end_time'] : '22:00'; ?>" style="width: 150px;">
                </div>
            </div>
            
            <div class="form-group">
                <button type="button" id="submit-btn" class="btn btn-primary">保存设置</button>
            </div>
        </form>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    // 保存按钮点击事件
    document.getElementById('submit-btn').addEventListener('click', function() {
        if (!validateForm('settings-form')) return;
        
        const data = getFormData('settings-form');
        
        // 处理未选中的复选框
        if (!data.allow_visit) {
            data.allow_visit = '0';
        }
        
        ajaxRequest('?do=site&act=save', data, function(res) {
            if (res.code === 0) {
                showToast(res.msg, 'success');
            } else {
                showToast(res.msg, 'error');
            }
        });
    });
});
</script>
